The present invention generally relates to computer controlled interaction with integrated circuits and more particularly to adapting programs for interacting with different integrated circuits.
Testing various operating characteristics of integrated circuits (ICs) is often a repetitive task in which selected characteristics are measured under various conditions. The measured characteristics, include, for example, amplifier gain and bandwidth, rise and fall-times, and switching times. Example conditions for which the measurements are repeated include low and high room temperatures, minimum and maximum supply voltages and various combinations of IC register contents and pin controls.
In many systems, tests are conducted using a computer that is programmed with test software. The computer is coupled to an interface board via a conventional communications channel, and the IC is connected to the interface board. Generally, individual programs are designed to test each different IC. An IC is sometimes testable using different interface boards. Thus, for a single IC there may be many different combinations of set-up procedures and test stimuli. Since testing each IC/board combination is accomplished with a different test program, managing and maintaining many such programs can be cumbersome and error prone. For example, if there are 8 IC parts, each testable with 3 different boards, then there would be 24 programs to maintain. For a change in testing that is required for all IC-board combinations, each of the test programs would have to be changed, resulting in additional expenditure of time and an increased possibility of introducing an error. A method and apparatus that addresses the aforementioned problems, as well as other related problems, is therefore desirable.
In various embodiments, the invention provides a method and system for programmed interaction with integrated circuits (ICs). The system allows a hard-coded program that is suitable for a family of ICs having certain characteristics in common to be dynamically adapted for use with specific ICs within the family. To test a specific IC within a family, the register characteristics and one or more program operations that are particular to the specific IC are obtained. During execution, the hard-coded program is adapted to interact with the specific IC using the register characteristics and the one or more program operations of the specific IC.
The above summary of the present invention is not intended to describe each disclosed embodiment of the present invention. The figures and detailed description that follow provide additional example embodiments and aspects of the present invention.